/*
 * const.h
 *
 *  Created on: 07/09/2012
 *      Author: guidi
 */

#ifndef CONST_H_
#define CONST_H_

#include <iostream>
#include <fstream>
#include <stdint.h>

enum MODO {DESCONOCIDO, COMPRIMIR, DESCOMPRIMIR};

const std::string EXTENSION = "rle";
const std::string PARAMETRO_COMPRIMIR = "-c";
const std::string PARAMETRO_DESCOMPRIMIR = "-d";
const std::string PARAMETRO_BENCHMARK = "-b";
const std::string CARACTERES_INVALIDOS = "/\\?%*:\"|<>";

const std::string MENSAJE_AYUDA = "Parámetros incorrectos, opciones posibles: \n"
		"-c fuente destino (comprimir)\n-d fuente destino (descomprimir)";
const std::string MENSAJE_COMPRESION_OK = "Compresión exitosa";
const std::string MENSAJE_DESCOMPRESION_OK = "Descompresión exitosa";
const std::string MENSAJE_EXTENSION = "Extensión incorrecta. \nSolo archivos \"rle\".";
const std::string MENSAJE_ARCHIVO_VACIO = "Archivo de origen vacio.\nIngrese otro por favor.";
const std::string MENSAJE_ARCHIVOS_IGUALES = "El archivo de origen y destino especificados son el mismo";

const int CODIGO_OK = 0;
const int ERROR_RUTA_INCORRECTA = 1;
const int ERROR_EXTENSION_INCORRECTA = 2;
const int ERROR_ARCHIVO_VACIO = 3;
const int ERROR_ARCHIVOS_IGUALES = 4;
const int ERROR_PARAMETROS_INCORRECTOS = 5;
const int ERROR_UNDEFINED = 129;
typedef uint8_t my_char_t;

class Utils {
public:
	bool static is_empty(std::ifstream& pFile) {
		return pFile.peek() == std::ifstream::traits_type::eof();
	}
};

#endif /* CONST_H_ */
